package com.jinmdz.fmis.api.api.model.settlement;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jinmdz.fmis.common.annotation.AnValidate;
import com.jinmdz.fmis.common.constant.EValidateCode;
import com.jinmdz.fmis.core.base.BaseBean;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;

/**
 * 费用结算付款请求数据
 *
 * @author LiCongLu
 * @date 2020-02-19 11:16
 */
@ApiModel(value = "费用结算付款请求数据", description = "费用结算付款请求数据")
public class ChargeAccountsSettlePayData extends BaseBean {
    /**
     * 付款方式编码
     */
    @AnValidate(name = "付款方式编码", required = true, code = EValidateCode.NO_LESS_ZERO)
    @ApiModelProperty(value = "付款方式编码", name = "payTypeCode", position = 1)
    private Integer payTypeCode;

    /**
     * 付款金额
     */
    @AnValidate(name = "付款金额", required = true, code = EValidateCode.NO_LESS_ZERO)
    @ApiModelProperty(value = "付款金额", name = "payCharge", position = 2)
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal payCharge;

    /**
     * 挂账单位
     */
    @AnValidate(name = "挂账单位")
    @ApiModelProperty(value = "挂账单位", name = "accountUnit", position = 3)
    private String accountUnit;

    public Integer getPayTypeCode() {
        return payTypeCode;
    }

    public ChargeAccountsSettlePayData setPayTypeCode(Integer payTypeCode) {
        this.payTypeCode = payTypeCode;
        return this;
    }

    public BigDecimal getPayCharge() {
        return payCharge;
    }

    public ChargeAccountsSettlePayData setPayCharge(BigDecimal payCharge) {
        this.payCharge = payCharge;
        return this;
    }

    public String getAccountUnit() {
        return accountUnit;
    }

    public ChargeAccountsSettlePayData setAccountUnit(String accountUnit) {
        this.accountUnit = accountUnit;
        return this;
    }
}
